With broadband internet and digital broadcasts becoming more prevalent, copyright protection technology that ensures the security of delivered content (primarily digital audiovisual (AV) content) have come to the fore. In particular, personal computers (PCs) having open architecture, make implementing security difficult since programs (software) that are stored to memory and process AV content reside in an environment where anyone can view, analyze and rewrite the program.
In other words, when AV content resides on the internet or on a broadcast network, although the AV content is encrypted and thus, secure, when the AV content is received and processed by a PC, the AV content must be decrypted and the decrypted AV content may be subject to illegal copying. With programs on the memory of a PC, anyone can view and rewrite the programs and thus, in principle, an alteration could be made enabling a program to be analyzed, whereby decrypted AV content is copied to, for example, a hard disk without authorization.
On the other hand, since the PC is a primary gateway to broadband internet, if security can be ensured, distribution of digital AV content over the entire internet would be possible, the significance of which is enormous.
Conventionally, mainstream program security on a PC involves concealing the algorithm that ensures security and obfuscation to make analysis of the algorithm difficult (i.e., to increase complexity without limitation to the program, to increase difficulty without limitation to program analysis, the first step of illegal program rewriting).
However, once a program is expanded on the main memory, copying is easy consequent to the memory being a visible environment as previously explained, and by taking the time to analyze the copied program, one can analyze the copyright protecting algorithm. In a system having a high degree of shared broadcasts, considered an extremely unstable copyright protecting system in terms of security, adoption of such a program is difficult with consideration of the damage that could be incurred by a single analysis.
Further, a method to guarantee program security may be considered where a secure module (a tamper-proof module) guaranteed for security and as a base for reliability, scans (in real-time) a program expanded at a memory region of the apparatus and does not allow the rewriting of the program to prevent tampering (illegal rewriting) of the program (see, for example, Japanese Laid-Open Patent Publication Nos. 2004-129227 and 2003-198527).
This base for reliability is a security guaranteed secure module (a tamper-proof module, basically, hardware) and the disabling of this hardware is extremely difficult, thereby dramatically improving security. In Japanese Laid-Open Patent Publication No. 2004-129227 above, if the secure module program scans a program in real-time, “scan function disabling” is interrupted, whereby hardware scanning called direct memory access (DMA) scanning that uses DMA is employed.
The hardware scanning described above can be applied only to compatible systems. In other words, it is assumed that the secure module and PC connection interface is an interface capable of hardware scanning and is limited to, for example, peripheral component interconnect (PCI) interfaces and PCI express (PCIe) interfaces.
On the other hand, the most common interface connecting a PC and module is a universal serial bus (USB). Since USB does not support hardware scan functions, hardware scans cannot be applied.
USB compliant software (drivers, etc.) on PCs requires a request for all processing. For example, if a module having a USB interface requests a scan, the module makes a request to the USB compliant software on a PC for a scan of the memory of the PC. The USB compliant software having received the request, executes the scan and returns the results of the scan to the module. Here, USB compatible software on a PC is at risk of being illegally tampered with, disabling the scan function.